bitkeeper revision 1.1658 (42a00cf2Cgpej1px1OeZJMp9dbdX8g)
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Fri, 3 Jun 2005 07:55:30 +0000 (07:55 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Fri, 3 Jun 2005 07:55:30 +0000 (07:55 +0000)
IO DMA isn't bound by physical address, but it is by machine address.
Signed-off-by: Scott Parish <srparish@us.ibm.com>
linux-2.6.11-xen-sparse/include/asm-xen/asm-x86_64/dma-mapping.h

index a646e3f8637c96f69bf65e43a0c73576b4c9d68a..8d4e666cf41ab867d6fa060e6911b7b6286e9e32 100644 (file)
@@ -39,11 +39,11 @@ static inline dma_addr_t dma_map_single(struct device *hwdev, void *ptr,
 
        if (direction == DMA_NONE)
                out_of_line_bug();
-       addr = virt_to_phys(ptr);
+       addr = virt_to_machine(ptr);
 
        if ((addr+size) & ~*hwdev->dma_mask)
                out_of_line_bug();
-       return phys_to_machine(addr);
+       return addr;
 }
 
 static inline void dma_unmap_single(struct device *hwdev, dma_addr_t dma_addr,